import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex)

export default new Vuex.Store({
  state: {
	  shopcart:[],
	  goodslist: [
			  { 'id': 1, 'title': '电水壶', 'price': 50.01, src: '/1.jpg' },
			  { 'id': 2, 'title': '电压力锅', 'price': 260.99, src: '/2.jpg' },
			  { 'id': 3, 'title': '电饭煲', 'price': 200.99, src: '/3.jpg' },
			  { 'id': 4, 'title': '电磁炉', 'price': 300.99, src: '/4.jpg' },
			  { 'id': 5, 'title': '微波炉', 'price': 400.99, src: '/5.jpg' },
			  { 'id': 6, 'title': '电饼铛', 'price': 200.99, src: '/6.jpg' },
			  { 'id': 7, 'title': '豆浆机', 'price': 199.99, src: '/7.jpg' },
			  { 'id': 8, 'title': '多用途锅', 'price': 510.99, src: '/8.jpg' }
			],
	total:'',
	// num:1
  },
  //getter可以对state里面的数据进行简单的计算和过滤
  getters: {
	  totalPrice(state){
	  return state.shopcart.reduce(function(total,item){
			return total += item.price + item.num;
		},0)
	  }
  },
  mutations: {
	  add(state,i){//mutation会接受state作为第一个参数
		  var first=state.shopcart.find(item=>item.id==i.id)
		  if(first){
			  
			  first.num++;
			  // console.log(state.num);
		  }else{
			  state.shopcart.push(
			  {
				  id: i.id,
				  title: i.title,
				  price: i.price,
				  src: i.src,
				  num: 1
			  }
			  )
		  }
	  },
	  
	  
	 //  add(state,i){//mutation会接受state作为第一个参数
	  
	 //  // console.log(i==state.shopcart[i-1].id)
		// if(state.num==0){
		// 	 state.shopcart.push(state.goodslist[i-1]);
		// 	 state.num ++
		//  }
		// else if(i==state.shopcart[i-1].id){
		// 	  state.num ++
		//  }else{
		// 	 state.shopcart.push(state.goodslist[i-1]);
		//  }
		//  // console.log(state.num)
		// // if(this.state.shopcart.find(i==state.goodslist[i].id)){
		// // 	state.num ++
		// // }else{
		// // 	 state.shopcart.push(state.goodslist[i-1])
		// // }
			
		// 	   // return this.shopcart.push({
		// 		  //  id,title,price,src
		// 	   // })
	 //  },
	  del(state,item){
		  state.shopcart.forEach(function(i,index){
			  console.log(i.id==item.id);
			  if(i.id==item.id){
				 
				  state.shopcart.splice(index,1);
			  }
		  })/*  */
		  // state.shopcart.splice(index,1)
	  }
  },
  actions: {
  },
  modules: {
  }
})
